Conversation
|
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #4407 +/- ##
==========================================
+ Coverage 56.21% 56.26% +0.04%
==========================================
Files 242 244 +2
Lines 32207 32508 +301
==========================================
+ Hits 18106 18290 +184
- Misses 11780 11875 +95
- Partials 2321 2343 +22 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
| // and reloads when either source is updated. It blocks until ctx is cancelled. | ||
| func (s *builderRegistrationService) Run(ctx context.Context) { | ||
| if s.path == "" { | ||
| if s.path == "" && s.obolClient == nil { |
There was a problem hiding this comment.
This will practically trigger only if the user runs Charon with
--overrides-file=""
--publish-address=""
, right?
What are the odds of having that? And if we want this to be disabled, shouldn't we have some better functionality rather than user having to specify the above 2 in such way?
This also relates to multiple decision trees further down in this function.
| // fetchFromAPI calls the Obol API, processes the response, stores API overrides, | ||
| // and calls recompute. Returns true if any validators have incomplete registrations | ||
| // or if an error occurred (to retry sooner). | ||
| func (s *builderRegistrationService) fetchFromAPI(ctx context.Context) (hasIncomplete bool) { |
There was a problem hiding this comment.
Can we rename hasIncomplete to retryEarly?
Or even make it an error and retry on error?
Or change the function signature to (hasIncomplete bool, err error)?
Right now we are returning hasIncomplete = true on error and it feels a bit incorrect.



Add automatic background fetching of builder registrations from the Obol API to the
builderRegistrationService. Previously operators had to manually runcharon feerecipient fetchto pull fully signed registrations. Now the service periodically fetches from the API and merges results with file overrides, preferring the entry with the highest timestamp per validator.Fetching schedule:
The
Runfunction now works even when no overrides file path is configured, as long as the Obol API address is set.category: feature
ticket: none